/**
 * 
 */
package de.cbf.cam.dsa.tavern.carte.ui.interfaces;

import java.awt.event.ActionListener;
import java.util.Iterator;

import org.eclipse.swt.widgets.Composite;

/**
 * @author Stefan Alter
 *
 */
public interface ICompositePersistEntity {
	public boolean 	setParent(Composite parent);
	public void 	setLayoutData(Object layoutData);	
	public void 	layout(boolean changed,boolean all);
	
	public Object  	getSelectedObject(); 
	/**
	 * @return selected objects or <code>null</code> if none is selected
	 */
	public Object[] getSelectedObjects();
	public void		setObjects(Iterator<? extends Object> iterator);	
	public void 	deSelectAll();
	
	public boolean	registerSelectionListener	 (ActionListener listener);	
	public boolean	deRegisterSelectionListener	 (ActionListener listener);
	
	public boolean	registerDoubleClickListener	 (ActionListener listener);	
	public boolean	deRegisterDoubleClickListener(ActionListener listener);
	
	public boolean	registerListChangedListener	 (ActionListener listener);	
	public boolean	deRegisterListChangedListener(ActionListener listener);
	
	public boolean	registerDeleteListener	 (ActionListener listener);	
	public boolean	deRegisterDeleteListener(ActionListener listener);
}
